package com.dingding.nettyserver.core.session;

/**
 * @Description 服务器端与客户端会话的抽象类
 * @author fengshuonan
 * @date 2016年11月18日 下午9:47:06
 */
public interface Session {
	
	/**
	 * @Description 会话绑定对象
	 * @author fengshuonan
	 */
	public Object getAttachment();
	
	/**
	 * @Description 绑定对象
	 * @author fengshuonan
	 */
	public void setAttachment(Object attachment);
	
	/**
	 * @Description 移除绑定对象
	 * @author fengshuonan
	 */
	public void removeAttachment();
	
	/**
	 * @Description 向会话中写入消息
	 * @author fengshuonan
	 */
	public void write(Object message);
	
	/**
	 * @Description 判断会话是否在连接中
	 * @author fengshuonan
	 */
	public boolean isConnected();
	
	/**
	 * @Description 关闭会话
	 * @author fengshuonan
	 */
	public void close();
	
	/**
	 * @Description 对方的ip地址
	 * @author fengshuonan
	 */
	public String ipAddr();
}
